﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using YasharEl.Infrastructure.ObjectFactory;
using YasharEl.Infrastructure.Diagnostics.Logging;

namespace YasharEl.Infrastructure.ApplicationModel.Bootstrap.Extensibility
{
    /// <summary>
    /// Interface for bootstrapping process extensions.
    /// </summary>
    public interface IBootstrappingExtension : IDescribable
    {
        BaseDependencyContainer Container
        {
            get;
            set;
        }

        ILogger Logger { get; set; }

        IEnumerable<Type> ScannedTypes { get; set; }

        IBootstrapper HostingBootstrapper { get; set; }
    }
}
